﻿using Newtonsoft.Json;

namespace OrkutAPILibrary.Entities
{
    /// <summary>
    /// Class representing Orkut Data
    /// </summary>
    /// <typeparam name="T">The Type that will be returned in the List property.</typeparam>
    public class OrkutData<T>
    {
        /// <summary>
        /// Gets or sets the filtered.
        /// </summary>
        /// <value>The filtered.</value>
        [JsonProperty(PropertyName = "filtered")]
        public string Filtered { get; internal set; }

        /// <summary>
        /// Gets or sets the start index.
        /// </summary>
        /// <value>The start index.</value>
        [JsonProperty(PropertyName = "startIndex")]
        public string StartIndex { get; internal set; }

        /// <summary>
        /// Gets or sets the total results.
        /// </summary>
        /// <value>The total results.</value>
        [JsonProperty(PropertyName = "totalResults")]
        public string TotalResults { get; internal set; }

        /// <summary>
        /// Gets or sets the sorted.
        /// </summary>
        /// <value>The sorted.</value>
        [JsonProperty(PropertyName = "sorted")]
        public string Sorted { get; internal set; }

        /// <summary>
        /// Gets or sets the list.
        /// </summary>
        /// <value>The list.</value>
        [JsonProperty(PropertyName = "list")]
        public T[] List { get; set; }

        /// <summary>
        /// Gets or sets the updated since.
        /// </summary>
        /// <value>The updated since.</value>
        [JsonProperty(PropertyName = "updatedSince")]
        public string UpdatedSince { get; internal set; }
    }
}
